// 构造函数
function Animal() {
    this.species = "动物";
    this.sayHi = function () {
        console.log(`${this.name} sayHi`)
    }
}
// extends 没有 class 用不了
function Cat(name, color) {
    // 将父对象的构造函数绑定在子对象上
    // Animal.apply(this);
    this.name = name;
    this.color = color;
}

// prototype 模式
// let ani = new Animal();
Cat.prototype = new Animal();// 原型对象 Cat 继承 Animal 属性
Cat.prototype.constructor = Cat;
let cat = new Cat('贝拉', '边牧');
console.log(cat.species, cat.sayHi());
